package com.gz.seckill.vo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class RespBean {
    private long code;
    private String message;
    private Object data;

    //成功后返回同时携带数据
    public static RespBean success(Object data) {
        return new RespBean(RespBeanEnum.SUCCESS.getCode(),
                RespBeanEnum.SUCCESS.getMessage(), data);
    }

    //成功后返回不携带数据
    public static RespBean success() {
        return new RespBean(RespBeanEnum.SUCCESS.getCode(),
                RespBeanEnum.SUCCESS.getMessage(),null);
    }

    //失败后返回不携带数据
    public static RespBean error(RespBeanEnum respBeanEnum) {
        return new RespBean(respBeanEnum.getCode(),
                respBeanEnum.getMessage(), null);
    }


    //失败后返回同时携带数据
    public static RespBean error(RespBeanEnum respBeanEnum,Object data) {
        return new RespBean(respBeanEnum.getCode(),
                respBeanEnum.getMessage(), data);
    }

}
